package jihe;

import java.util.Iterator;
import java.util.Scanner;
import java.util.SortedSet;
import java.util.TreeSet;

public class Set2 {
    public static void main(String[] args)
    {
        TreeSet<Double> scores=new TreeSet<Double>();    //创建 TreeSet 集合
        Scanner input=new Scanner(System.in);
        System.out.println("------------学生成绩管理系统-------------");
        for(int i=0;i<5;i++)
        {
            System.out.println("第"+(i+1)+"个学生成绩：");
            double score=input.nextDouble();
            //将学生成绩转换为Double类型，添加到TreeSet集合中
            scores.add(Double.valueOf(score));
        }
        Iterator<Double> it=scores.iterator();    //创建 Iterator 对象
        System.out.println("学生成绩从低到高的排序为：");
        while(it.hasNext())
        {
            System.out.print(it.next()+"\t");
        }
        System.out.println("\n请输入要查询的成绩：");
        double searchScore=input.nextDouble();
        if(scores.contains(searchScore))
        {
            System.out.println("成绩为： "+searchScore+" 的学生存在！");
        }
        else
        {
            System.out.println("成绩为： "+searchScore+" 的学生不存在！");
        }
        //查询不及格的学生成绩
        SortedSet<Double> score1=scores.headSet(60.0);
        System.out.println("\n不及格的成绩有：");
        for(int i=0;i<score1.toArray().length;i++)
        {
            System.out.print(score1.toArray()[i]+"\t");
        }
        //查询90分以上的学生成绩
        SortedSet<Double> score2=scores.tailSet(90.0);
        System.out.println("\n90 分以上的成绩有：");
        for(int i=0;i<score2.toArray().length;i++)
        {
            System.out.print(score2.toArray()[i]+"\t");
        }
    }
}
//在使用自然排序时只能向 TreeSet 集合中添加相同数据类型的对象，
// 否则会抛出 ClassCastException 异常